<!doctype html>
[#escape x as (x)!?html]
<html lang="zh-CN">
<head>
  <meta charset="utf-8">
  <title>${channel.title} - ${site.title}</title>
  <meta name="keywords" content="${channel.seoKeywords}">
  <meta name="description" content="${channel.seoDescription}">
  [#include 'inc_meta.html'/]
  [#include 'inc_css.html'/]
  [#include 'inc_js.html'/]
</head>
<body>
[#include 'inc_header.html'/]
<div class="bg-gray-200">
  <div class="container">
    <nav class="row" aria-label="breadcrumb">
      <ol class="col list-inline my-2">
        [#assign parent = channel.parent!channel/]
        <li class="list-inline-item"><a class="btn btn-sm [#if parent.id == channel.id]btn-primary[#else]btn-link[/#if]" href="${parent.url}">全部</a></li>
        [@ChannelList parentId=parent.id; list]
        [#list list as bean]
        <li class="list-inline-item"><a class="btn btn-sm [#if channel.id == bean.id]btn-primary[#else]btn-link[/#if]" href="${bean.url}">${bean.name}</a></li>
        [/#list]
        [/@ChannelList]
      </ol>
    </nav>
  </div>
</div>
<div class="container mt-3">
  <div class="row">
    <div class="col">
      <div>
        [#assign customsQueryMap={}/]
        [#list channel.articleModel.fieldList?filter(field->['radio','checkbox','select','multipleSelect']?seqContains(field.type)) as field]
        <div class="py-1 border-bottom">
          [#assign param=field.code+'Key'/]
          <a href="${addParam(channel.url, channel.dynamicUrl, param)}" class="btn btn-sm[#if !Params[param]??] btn-secondary[#else] btn-link text-reset[/#if]">全部${field.name}</a>
          [@DictList typeId=field.dictTypeId; list]
          [#list list as dict]
          <a href="${addParam(channel.url, channel.dynamicUrl, param,dict.value)}"
             class="btn btn-sm [#if Params[param]! == dict.value]btn-secondary[#else]btn-link text-reset[/#if]">${dict.name}</a>
          [/#list]
          [/@DictList]
        </div>
        [#assign customsQueryMap=customsQueryMap + {'ArrayEQ_@articleExt-mainsJson$'+param+(field.dataType != 'string')?string('_Int',''): Params[param]!}/]
        [/#list]
      </div>
      [@ArticlePage channelId=channel.id isIncludeSubChannel='true' Q_=customsQueryMap orderBy=channel.orderDesc?string("sticky_desc,order_desc","sticky_desc,order_asc"); pagedList]
      <ul class="list-unstyled">
        [#list pagedList.content as bean]
        <li class="mt-3 media border-bottom position-relative pb-3">
          [#if bean.image??][@A bean=bean class="mr-3"]<img src="${bean.image}" class="rounded-sm img-thumbnail cm-media-img" alt="${bean.title}">[/@A][/#if]
          <div class="media-body">
            <p class="mt-0 mb-1">[@A bean=bean class="cm-link text-decoration-none"/]</p>
            <p class="text-muted d-none d-sm-block mb-2">
              [@A bean=bean class="text-reset small text-decoration-none"]${substring(bean.description,60,'...')}[/@A]
            </p>
            <div class="small text-muted mt-3 clearfix">
              <div class="float-left">
                <span>[#list bean.channel.paths as c][@A bean=c/][#if c_has_next] > [/#if][/#list]</span>
                <i class="ml-2 far fa-eye"></i> ${bean.views}
              </div>
              <div class="float-right"><i class="ml-2 far fa-clock"></i> ${format(bean.publishDate, 'yyyy-MM-dd')}</div>
            </div>
          </div>
        </li>
        [/#list]
      </ul>
      [#include 'inc_page.html'/]
      [/@ArticlePage]
    </div>
  </div>
</div>
[#include 'inc_footer.html'/]
<script>axios.get('${api}/channel/view/${channel.id?c}');</script>
</body>
</html>
[/#escape]
